草庐IT

jQuery Mobile 事件

全部标签

javascript - 如何删除事件监听器?

下面是我的事件监听器代码window.addEventListener("beforeunload",function(e){if(sessionStorage.token!="abide"){//callapi}});如果我想移除这个事件监听器,我该怎么办?代码是否像下面这样工作?window.removeEventListener("beforeunload"); 最佳答案 要删除事件监听器,您的事件处理函数必须是外部命名函数,而不是匿名(您需要引用它功能):window.addEventListener("beforeunlo

javascript - 删除处理程序本身中的事件处理程序

简而言之:我想将.bind的结果绑定(bind)为它自己调用中的参数varbound=foo.bind(this,bound);因为我不确定还有什么方法可以解决我的问题。问题:我有一个项目依赖于其他项目的数组。删除其中一项后,我想删除依赖项,并删除放置在依赖项上的所有监听器。我正在努力删除其他依赖项的事件处理程序。我正在尝试使用绑定(bind),但由于处理函数是删除监听器的函数,我发现我必须将bind()调用的结果绑定(bind)到它自己的调用中争论。这当然行不通。下面的绑定(bind)调用将未绑定(bind)版本的“处理程序”绑定(bind)为参数,因此removeEventList

javascript - 火狐扩展。如何捕捉 onload 事件?

所以..得到了firefox的可编写脚本的扩展。它是somelika一个webspider,用javascript编写。我想做什么:我希望它加载一个页面,他们做一些工作,然后转到另一个页面(使用加载页面中的url)。加载新页面后-蜘蛛会做同样的工作。算法有点像这个:等待页面加载完毕做一些工作选择一个不同的网址转到此网址转到1.在我的主要功能中,我执行以下代码:gBrowser.addEventListener("DOMContentLoaded",haXahv8,false);在我转到另一个页面之前一切正常...我如何在我的firefox扩展中重用DOMContentLoaded事件?

javascript - 用于立即更改输入的 jQuery 事件处理程序

我正在寻找一个(jQuery)事件处理程序,它在input[type="text"]值更改后立即执行一个函数。.changejQuery事件处理程序在input[type="text"]失去焦点后执行函数(这可能适用于另一种情况)。keypress/up/down仅在用户将某些内容输入输入时起作用(而不是在我动态操作它时)。有什么解决办法吗? 最佳答案 在这种情况下,我所做的一件事是将同一个处理程序绑定(bind)到一堆事件。$('input').bind("changeblurkeyupmouseup",function(){$(

javascript - 如何创建一个事件监听器来检测 bool 变量是否变为真?

例如,我有varmenu_ready=false;。我有一个ajax函数,它在ajax完成后将menu_ready设置为true://setupeventlistenerhere$(...).load(...,function(){...menu_ready=true;}如何设置等待menu_ready为真的事件监听器? 最佳答案 您不能将事件监听器附加到JavaScript变量本身,但您可以伪造它。使用具有get、set和listen方法的对象,而不是bool变量:functionBool(initialValue){varboo

javascript - 是否有用于 jQuery 的移动触摸事件插件?

我知道jQueryMobile捆绑了许多对移动设备有用的事件。但是,我不想包含作为整个jQueryMobile包的一部分的所有附加插件。我的问题很简单:有没有人遇到过用于添加触摸设备事件的独立jQuery的好插件?像这样的东西:$(this).tap();$(this).taphold();$(this).swipeleft();$(this).swiperight();$(this).doubletap();我知道我可以自己写一个插件来实现这个,但如果已经完成了,我不想重新发明轮子...... 最佳答案 只是想指出我最终为此编写了

javascript - HammerJS 事件属性未定义

我正在开发这个小网站:Website;我正在使用HammerJS作为触摸支持库。它似乎在响应事件,并且识别event.type属性,但是当我试图获取event.direction或其他相关drag事件的属性控制台中没有任何输出(我在控制台中记录结果)。这就是我监听drag事件的方式"Application.ApplicationController.prototype.Drag=function(selector,delay,callback){return$(selector).on('drag',_.debounce(function(event){event.preventDef

javascript - Leaflet 中多个事件的单个事件处理程序

是否可以通过这种方式为多个事件创建触发器?map.on('click,dragstart,zoomstart',eventHandler);如果不是,下一个为多个事件触发相同事件处理程序的最佳方法是什么?map.on('click',eventHandler);map.on('dragstart',eventHandler);map.on('zoomstart',eventHandler); 最佳答案 这是可能的,只需删除逗号:map.on('clickdragstartzoomstart',eventHandler);functi

javascript - 暂时禁用所有当前事件的 jQuery 事件处理程序

我正在制作一个双击可编辑的TD元素:$(document).on("dblclick","#table>tbody>tr>td.cell",function(e){if(e.which!=1||e.shiftKey||e.altKey||e.ctrlKey)//needleftbuttonwithoutkeyboardmodifiersreturn;reset_selection();vareditor=document.createElement("div");editor.setAttribute("contenteditable","true");editor.innerHTML

javascript - 通过拖放 fullcalendar-Javascript 来更新事件

我正在使用Fullcalendar对于我正在开发的项目...我只剩下一个功能要实现,即当现有事件从其原始位置拖到另一个时间或日期时。我想知道如何获取当前对象信息(标题、新开始时间、旧开始时间、id、url等),以便我可以使用较新的信息更新数据库……Fullcalendar对象的哪个属性执行我用?我实现了drop属性;drop:function(date,allDay){//retrievethedroppedelement'sstoredeventobjectvaroriginalEventObject=$(this).data('eventObject');//weneedtocop